草庐IT

Android JUnit 测试 ClassNotFoundException

全部标签

php - Laravel 测试服务依赖注入(inject)错误

从结论开始,我得到了这个错误:[ErrorException]Argument1passedtoSomeValidatorTest::__construct()mustbeaninstanceofApp\Services\Validators\SomeValidator,nonegiven,calledin....vendor/phpunit/phpunit/src/Framework/TestSuite.phponline475anddefined在Laravel应用程序中,我有一个名为“SomeValidator.php”的脚本,如下所示:dependency=$someDepen

php - 如何在 PHPUnit 中使用数据提供程序测试异常?

PHPUnit有一个非常有用的特性@dataProvider,这允许测试一个方法的多个案例。它还有另一个很酷的注释--@expectedException以确保应用程序在定义的位置抛出正确的Exception。我目前正在针对多种边缘情况测试一种方法,并想像这样结合这两个功能(不是工作代码):classTestMyClass{/***@dataProviderprovideDataForFoo*/publicfunctiontestFoo($paramBar,$paramBuz,$expected){$myObject=newMyClass();$this->assertEquals($

php - 使用基于 Active Record 的框架进行单元测试

我正在使用一个基于ActiveRecordpattern的ORM框架.我数据库中的每个表都绑定(bind)到我的代码中的一个模型。我想对这些模型进行单元测试,所以我首先从模型中提取每个save()和update()调用,以便只对对象进行更改,它们只会在需要时持久化。不过,我不知道如何在这种情况下应用此策略。我有一个Chat模型,User是其中的一部分,User可以将ChatNote添加到聊天。这是当前的实现://User.phppublicfunctionaddChatNote($chatNoteContent,Chat$chat){$chatNote=newChatNote();$c

php - 如何通过更改通过引用传递的参数来对调用具有副作用的函数的方法进行单元测试?

我有一个调用内置PHP函数的方法,openssl_random_pseudo_bytes.publicfunctiongenerateRandomBytes(){$crypto_secure=TRUE;//$crypto_secureispassedbyreferenceandwillbesettoFALSEby//openssl_random_pseudo_bytesifitusesaninsecurealgorithm$random_bytes=openssl_random_pseudo_bytes(16,$crypto_secure);if(!$crypto_secure){th

php - 单元测试创​​建对象的方法

我正在努力思考单元测试,但我还需要找到一block拼图。我想做的是为以下代码编写测试。在这种情况下,我有一个非常简单的前端Controller(用PHP编写)。classfrontController{publicfunctionrouteRequest($oRequest){$sClassname=$oRequest->getController();$sMethod=$oRequest->getAction();$oController=new$sClassname();$oResponse=$oController->{$sMethod}($oRequest);return$oR

php - 是否有任何工具可以自动从测试服务器转移到生产服务器?

是否有任何工具可以自动将代码从测试转移到(阶段,然后转移到)生产?我们在LAMP堆栈上运行,不想依赖FTP访问?除此之外,对于相同的过程是否有一些BASH或PERL脚本?我们的生产服务器无法运行我们用于开发的SVN或HG。 最佳答案 查看PHING.它非常灵活,如果需要,您可以使用原始php代码对其进行扩展……它所做的(并且可以做的)远不止是四处移动(包括测试、构建、文档编制等)……至于文件传输位,您可以使用一系列内置方法(包括但不限于FTP、SCP、SFTP、RSYNC等)连接到远程服务器...

PHP SwiftMailer Localhost 测试设置

我刚开始学习如何使用SwiftMailer我无法从本地主机发送简单的测试消息。以下是我尝试使用的代码。//Passitasaparameterwhenyoucreatethemessage$message=Swift_Message::newInstance();$message->setSubject('Mysubject');$message->setFrom(array('noreply@domain.com'=>'NoReply'));$message->setTo(array('myemail@domain.com'=>'MyName'));$transport=Swift_

php - 如何使用 PHPUnit 测试和模拟 zend 框架 Controller ?

我试图对我的Controller进行单元测试,但我在互联网上找到的每个教程都说我应该使用$this->dispatch("controller/action")来运行我想要测试的特定操作。但是这样做,我无法模拟任何数据映射器或对其他方法的其他调用。为了解决这个问题,我试图获取Controller类的一个实例,然后直接调用我想测试的方法,但是这样做,我得到了一个错误:Zend_Exception:Settingrequestobjectmanuallyisnotallowed我什至不确定这是正确的方法,因为我真的不知道我将如何测试这样的事情。我的测试用例:http://pastie.or

php - 模拟单元测试 (PHP)

我有一个类:classFoo{functiongetCurrentBar(){$model=Query::findByPk($this->getSession()->get('current_bar'));//Pseudocode...return$model;}}所以在我的应用程序中基本上一次有一个柱,它作为一个整数存储在session中。我经常调用一个辅助函数来查找模型实例,它会进行数据库查询。也有缓存,但现在不重要了。我的问题是:如何用对它进行单元测试?我测试的一些类需要这个。我想我可以更改session以包含ID,但这意味着我需要在数据库中有一个相应的模型。最好的方法是添加方法

PHPUnit:如何测试远程 Postgres 服务器上的数据库交互?

我正在尝试对我创建的类进行单元测试,但大多数类都处理数据库。我已经获得了非数据库相关的类,可以在本地进行很好的测试,但是当涉及到使用数据库时,尤其是远程时,我感到很困惑。该指南显示使用PDO访问似乎已转储到XML文件的本地数据库,所以它对我没什么用,因为我的数据库在亚马逊云中并使用pg_*函数连接到Postgres数据库。是否有任何类似情况的好例子或者任何人都可以提供任何帮助?我不知道我是否应该在文件中包含我的数据库的本地版本或连接到远程服务器。如果我必须连接,我需要做什么才能使其正常工作?结论项目架构师和我进行了调查,我们确定最好实现ORM,因为没有对数据库的抽象。在此之前,数据库测